/*******************************************
  Jose Andres Lara Vecino

  Author       : $Author: cainlara@gmail.com $
  Last CheckIn : $Date: 2012-08-22 18:35:06 +0000 (Wed, 22 Aug 2012) $
  Revision     : $Revision: 100 $
*******************************************/

package gui.usuario;

import control.App;
import core.ETipoTabla;
import frente.Usuario;
import generico.GenericoTablaModelo;

/**
 * Modelo para la tabla de usuarios.
 * 
 * @author jose.lara 08.06.2012
 *
 */
public class UsuariosTablaModelo extends GenericoTablaModelo<Usuario> {
    private static final long serialVersionUID = -2887236299080117852L;
    
    public UsuariosTablaModelo() {
        super(ETipoTabla.USUARIOS);
        setDatos(App.getSesion().getUsuarioAPI().getTodosUsuarios());
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        Usuario usuario    = null;
        Object value        = null;
        
        if(getDatos() != null && rowIndex < getDatos().size()) {
            usuario = getDatos().get(rowIndex);
            
            switch (columnIndex) {
                case 0:
                    value = usuario.getNombre();
                    break;
                case 1:
                    value = usuario.getCorreo();
                    break;
                case 2:
                    value = usuario.getNombreUsuario();
                    break;
                case 3:
                    value = usuario.getNombreGrupoUsuario();
                    break;
                default:
                    break;
            }
        }
        
        return value;
    }

    @Override
    public void actualizarDatos() {
        setDatos(App.getSesion().getUsuarioAPI().getTodosUsuarios());
        fireTableDataChanged();
    }
}